#ifndef CQUADTREEPOSITEM_H
#define CQUADTREEPOSITEM_H

#include "my_utilities/mymath.h"

/* Class that each object instantiates to feed information to the Quad Tree */
class CRigidBody;
class CQuadTreeNode;

class CQuadTreePosItem
{
    public:
        CQuadTreePosItem(CRigidBody* parent, Vec2f* p); //ctor

        ~CQuadTreePosItem(); //dtor

//        CQuadTreePosItem(const CQuadTreePosItem& c); //copy ctor

        //updates position for rectangle
        void Move();

        //compares two objects
        bool operator==(const CQuadTreePosItem& n) const;

        CQuadTreePosItem& operator=(const CQuadTreePosItem& c);

        //getters
        Vec2f* GetPos() const;  //gets center position of rectangle
        CRect GetRect() const;
        CRigidBody*    GetParent() const;
        CQuadTreeNode* GetCurrentNode() const;

        //setters
        void SetCurrentNode(CQuadTreeNode* n);
    protected:
        Vec2f* pos_;
        CRigidBody* parent_;
        CQuadTreeNode* node_;



};

#endif // CQUADTREEPOSITEM_H
